#pragma once


#include<vector>

namespace bit
{
	template<class T, class Container = vector<T>>
	class priority
	{
	public:


		//void AdjustUp(int child)
		//{
		//	int parent = (child - 1) / 2;
		//	while (child > 0)
		//	{
		//		if (_con[parent] < _con[child])
		//		{
		//			swap(_con[parent], _con[child]);
		//			child = parent;
		//			parent = (child - 1) / 2;
		//		}
		//		else
		//		{
		//			break;
		//		}
		//	}

		//}


		//void AdjustUp(int child)
		//{
		//	int parent = (child - 1) / 2;
		//	while (child > 0)
		//	{
		//		if (con[parent] < con[child])
		//		{
		//			swap(con[parent], con[child])
		//				child = parent;
		//			parent = (child - 1) / 2;
		//		}
		//		else
		//		{
		//			break;
		//		}
		//	}
		//}



		void push(const  T& x)
		{
			_con.push_back(x);
			AdjustUp(_con.size() - 1);
		}


	private:
		Container _con;
	};
}